-- 使用math_func.lua


-- lua虚拟机加载第一个lua脚本执行;
-- 再由这个脚本去包含其他的脚本;
-- 代码不可能都写到一个脚本;
-- 一般我们会把逻辑相同代码，功能相同的代码放到一起;
-- 方便的代码维护，代码模块 其他的lua文件
--
-- require 来加载我们的代码, 不需要后缀名;
-- require("math_func")
--require "math_func" 
-- require同时还会有返回值;

local math_func = require("math_func")
--也可以这样写
-- require "math_func"
print(math_func)

--如果一个lua代码被require多次会发生什么样的事情;
--require只会装载执行lua代码一次,
--local ret =  require("math_func")
--多次require只会装载和执行一次lua脚本,但是第二次require的时候
--会发现前面已经装载过了，所以直接返回第一次装载的返回值;
-- print(ret)
--end

-- 怎么在其他的文件里面使用lua的函数呢？
local ret = math_abs(-4)
ret = math_vec_length_2({x = 3, y = 4})
print("ret = " .. ret)

ret = math_func.abs(-8) 
print("ret2 = " .. ret)

math_func.test_func()

